package com.appbee.user.client;

import javax.inject.Singleton;

import com.appbee.user.client.gin.UserRequestFactoryProvider;
import com.appbee.user.client.presenter.UserInfoActivity;
import com.appbee.user.client.presenter.UserListActivity;
import com.appbee.user.client.text.UserStrings;
import com.appbee.user.client.ui.MemberEditor;
import com.appbee.user.client.ui.UserInfoView;
import com.appbee.user.client.ui.UserListView;
import com.appbee.user.shared.service.UserRequestFactory;
import com.google.gwt.inject.client.AbstractGinModule;

public class UserInfoGinModul extends AbstractGinModule
{

	@Override
	protected void configure()
	{
		bind(UserInfoActivity.View.class).to(UserInfoView.class)
				.in(Singleton.class);
		bind(UserStrings.class).in(Singleton.class);
		bind(UserListActivity.View.class).to(UserListView.class)
				.in(Singleton.class);
		bind(UserListActivity.EditMemberView.class).to(MemberEditor.class)
				.in(Singleton.class);
		bind(UserRequestFactory.class)
				.toProvider(UserRequestFactoryProvider.class)
				.in(Singleton.class);

	}

}
